﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Zhao.Models.DTO
{
    /// <summary>
    /// 活动数据传输对象
    /// </summary>
    public class ActivitiesDTO
    {
        /// <summary> 
        /// 活动ID
        /// </summary>
        public int? aId { get; set; }

        /// <summary>
        /// 所属场馆ID
        /// </summary>
        public Guid? vId { get; set; }

        /// <summary>
        /// 场馆名称
        /// </summary>
        public string? vName { get; set; } = null!;

        /// <summary>
        /// 活动类型ID
        /// </summary>
        public int tId { get; set; }

        /// <summary>
        /// 活动类型名称
        /// </summary>
        public string? tName { get; set; }

        /// <summary>
        /// 活动标题
        /// </summary>
        public string Title { get; set; } = null!;

        /// <summary>
        /// 活动详情
        /// </summary>
        public string? Description { get; set; }

        /// <summary>
        /// 最大参与人数（null表示不限制）
        /// </summary>
        public int? MaxNumber { get; set; }

        /// <summary>
        /// 活动开始时间
        /// </summary>
        public TimeOnly StartTime { get; set; }

        /// <summary>
        /// 活动结束时间
        /// </summary>
        public TimeOnly EndTime { get; set; }

        /// <summary>
        /// 活动状态：0-待发布，3-已上线，5-已结束，7-取消
        /// </summary>
        public short Status { get; set; }

        /// <summary>
        /// 活动图片URL
        /// </summary>
        public string Image { get; set; } = null!;
        /// <summary>
        /// 活动详情时间
        /// </summary>
        public string DisplayDate { get; set; }

        /// <summary>
        /// 活动价格（实际费用）
        /// </summary>
        public decimal Price { get; set; }

        /// <summary>
        /// 创建时间
        /// </summary>
        public DateTime? CreatedAt { get; set; }
        /// <summary>
        /// 活动截至报名时间
        /// </summary>
        public short? Deadline { get; set; }

        /// <summary>
        /// 定价类型 1固定价  3AA制  5免费
        /// </summary>
        public short PriceType { get; set; }

        /// <summary>
        /// 押金金额
        /// </summary>
        public decimal? DepositAmount { get; set; }

        /// <summary>
        /// 是否已结算
        /// </summary>
        public bool IsSettled { get; set; }

        /// <summary>
        /// 结算时间
        /// </summary>
        public DateTime? SettlementTime { get; set; }

        /// <summary>
        /// 是否启用女士优惠
        /// </summary>
        public bool IsLadyDiscountEnabled { get; set; }
        
        /// <summary>
        /// 优惠类型：1= 固定价，3= 折扣，5= 减价
        /// </summary>
        public short? LadyDiscountType { get; set; }
        
        /// <summary>
        /// 优惠值（如固定价30、折扣0.8、减价10）
        /// </summary>
        public decimal? LadyDiscountValue { get; set; }

        /// <summary>
        /// 取消原因（活动被取消时的原因说明）
        /// </summary>
        public string? CancelReason { get; set; }
    }
}
